{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using TensorFlow backend.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Couldn't import dot_parser, loading of dot files will not be possible.\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "import cv2\n",
    "import os\n",
    "from keras.layers import Input\n",
    "from model import VGG16\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "def padding(x):\n",
    "    h,w,c = x.shape\n",
    "    size = max(h,w)\n",
    "    paddingh = (size-h)//2\n",
    "    paddingw = (size-w)//2\n",
    "    temp_x = np.zeros((size,size,c))\n",
    "    temp_x[paddingh:h+paddingh,paddingw:w+paddingw,:] = x\n",
    "    return temp_x\n",
    "\n",
    "def load_image(path):\n",
    "    x = cv2.imread(path)\n",
    "    sh = x.shape\n",
    "    x = np.array(x, dtype=np.float32)\n",
    "    x = x[..., ::-1]\n",
    "    # Zero-center by mean pixel\n",
    "    x[..., 0] -= 103.939\n",
    "    x[..., 1] -= 116.779\n",
    "    x[..., 2] -= 123.68\n",
    "    x = padding(x)\n",
    "    x = cv2.resize(x, target_size, interpolation=cv2.INTER_LINEAR)\n",
    "    x = np.expand_dims(x,0)\n",
    "    return x,sh\n",
    "\n",
    "def cut(pridict,shape):\n",
    "    h,w,c = shape\n",
    "    size = max(h, w)\n",
    "    pridict = cv2.resize(pridict, (size,size))\n",
    "    paddingh = (size - h) // 2\n",
    "    paddingw = (size - w) // 2\n",
    "    return pridict[paddingh:h + paddingh, paddingw:w + paddingw]\n",
    "\n",
    "def sigmoid(x):\n",
    "    return 1/(1 + np.exp(-x))\n",
    "\n",
    "def getres(pridict,shape):\n",
    "    pridict = sigmoid(pridict)*255\n",
    "    pridict = np.array(pridict, dtype=np.uint8)\n",
    "    pridict = np.squeeze(pridict)\n",
    "    pridict = cut(pridict, shape)\n",
    "    return pridict\n",
    "\n",
    "def laplace_edge(x):\n",
    "    laplace = np.array([[-1, -1, -1], [-1, 8, -1], [-1, -1, -1]])\n",
    "    edge = cv2.filter2D(x/255.,-1,laplace)\n",
    "    edge = np.maximum(np.tanh(edge),0)\n",
    "    edge = edge * 255\n",
    "    edge = np.array(edge, dtype=np.uint8)\n",
    "    return edge"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "os.environ[\"CUDA_DEVICE_ORDER\"] = \"PCI_BUS_ID\"\n",
    "os.environ[\"CUDA_VISIBLE_DEVICES\"] = \"0\"\n",
    "\n",
    "model_name = 'model/PFA_00050.h5'\n",
    "\n",
    "target_size = (256,256)\n",
    "\n",
    "dropout = False\n",
    "with_CPFE = True\n",
    "with_CA = True\n",
    "with_SA = True\n",
    "\n",
    "if target_size[0 ] % 32 != 0 or target_size[1] % 32 != 0:\n",
    "    raise ValueError('Image height and wight must be a multiple of 32')\n",
    "\n",
    "model_input = Input(shape=(target_size[0],target_size[1],3))\n",
    "model = VGG16(model_input,dropout=dropout, with_CPFE=with_CPFE, with_CA=with_CA, with_SA=with_SA)\n",
    "model.load_weights(model_name,by_name=True)\n",
    "\n",
    "for layer in model.layers:\n",
    "    layer.trainable = False"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\nSUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 432x288 with 3 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "image_path = 'image/2.jpg'\n",
    "img, shape = load_image(image_path)\n",
    "img = np.array(img, dtype=np.float32)\n",
    "sa = model.predict(img)\n",
    "sa = getres(sa, shape)\n",
    "plt.title('saliency')\n",
    "plt.subplot(131)\n",
    "plt.imshow(cv2.imread(image_path))\n",
    "plt.subplot(132)\n",
    "plt.imshow(sa,cmap='gray')\n",
    "plt.subplot(133)\n",
    "edge = laplace_edge(sa)\n",
    "plt.imshow(edge,cmap='gray')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
